package javastudent;

import java.util.Scanner;

public class Main {
    //编写程序数一下 1到 100 的所有整数中出现多少个数字9
        public static void main1(String[] args) {
            int count = 0;
            int i = 0;
            for (i = 0; i < 100; i ++){
                if (i % 10 == 9){
                    count++;
                }if (i / 10 == 9){
                    count++;
                }
            }
            System.out.println(count);

        }
//    给定一个数字，判定一个数字是否是素数
    public static void main2(String[] args) {
            int n = 6;
        for (int i = 2; i < 10; i++) {
            if (i != n && n % i == 0){
                System.out.println("这个数不是素数");
                return;
            }

        }
        System.out.println("这个数是素数");

    }
//    输入描述：
//    多组输入，一个整数（2~20），表示输出的行数，也表示组成“X”的反斜线和正斜线的长度。
//    输出描述：
//    针对每行输入，输出用“*”组成的X形图案
     public static void main3(String[] args) {
            Scanner scanner = new Scanner(System.in);
         while (scanner.hasNextInt()){
             int n = scanner.nextInt();
             for (int i = 0; i < n; i++) {
                 for (int j = 0; j < n; j++) {
                     if (i == j){
                         System.out.print("*");
                     } else if (i + j == n - 1) {
                         System.out.print("*");

                     }else {
                         System.out.print(" ");
                     }if (j == n - 1){
                         System.out.println();
                     }

                 }

             }
         }
}
//    求出0～n之间的所有“水仙花数”并输出。
//     (“水仙花数”是指一个三位数，其各位数字的立方和确好等于该数本 身，如；153＝1^3＋5^3＋3^3，则153是一个“水仙花数“。）
public static void main4(String[] args) {
    for (int i = 0; i < 9999; i++) {
        int count = 0;
        int tem = i;
        while (tem != 0){
            count ++;
            tem /= 10;
        }if (count >= 3){
            tem = i;
            int sum = 0;
            while (tem != 0){
                sum += Math.pow(tem%10,count);
                tem /= 10;
            }
            System.out.println(sum);
        }
        
    }
}
//    计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值    。
public static void main5(String[] args) {
    double sum = 1.0;
    for (double i = 1.0; i < 100; i++) {

        int flg = 1;
         sum = sum + sum/i * flg;
         flg = -flg;

    }
    System.out.println(sum);
}
//    求2个整数的最大公约数
public static void main6(String[] args) {
    int a = 90;
    int b = 40;
    int x = 0;
    for (int i = 1; i < a; i++) {
        if(a%i == b%i && a%i == 0){
            x = i;
        }

    }
    System.out.println(x);
}
//    求一个整数，在内存当中存储时，二进制1的个数。
public static void main7(String[] args) {
            int n = 10;
            int count = 0;
    while (n != 0){
       n = n & (n-1);
       count++;
    }
    System.out.println(count);
}
}
